Method of managing inbound communications based on the current location of a wireless communications device

ABSTRACT

A method of managing inbound communications received by a roaming wireless communications device entails enabling a user of the roaming wireless communications device to activate an inbound communications filter having filter criteria based on a current location of the user and a current location of a sender of an inbound communication. Once the wireless device has determined whether the inbound communication satisfies the filter criteria, the wireless device notifies the user that the inbound communication has been received provided that the inbound communication satisfies the filter criteria.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of application Ser. No. 12/014,839filed Jan. 16, 2008 which is scheduled to issue as U.S. Pat. No.8,326,285 on Dec. 4, 2012, the entire disclosure of which is herebyincorporated by reference for all purposes.

TECHNICAL FIELD

The present disclosure relates generally to wireless communicationsdevices and, in particular, to techniques for managing inboundcommunications based on the current location of the wireless device.

BACKGROUND

Wireless communications devices having voice, e-mail and Web-browsingcapabilities are rapidly increasing in popularity both for personal andbusiness use. However, when a wireless user travels or “roams” toanother city, the user may wish to be notified of any inboundcommunications that originate from within the city in which the user iscurrently roaming. Presently, wireless communications device do notdistinguish inbound communications that originate locally to the roamingdevice from those that originate from other (remote) locations. Awireless device that overcame this deficiency would thus be highlydesirable.

BRIEF DESCRIPTION OF THE DRAWINGS

Further features and advantages of the present technology will becomeapparent from the following detailed description, taken in combinationwith the appended drawings, in which:

FIG. 1 is a flowchart outlining steps of a method of managing inboundcommunications on a roaming wireless communications device in accordancewith the present technology;

FIG. 2 is a block diagram of key components of a wireless communicationsdevice on which the present technology can be implemented;

FIG. 3 is a depiction of a wireless communications device displaying aninbox in which e-mails that have originated locally to the device arepresented with a distinctive font to distinguish these locallyoriginated e-mails from those that have not originated locally;

FIG. 4 is a depiction of a wireless communications device displaying alocal inbox for presenting e-mails that have originated locally to thedevice and a separate main inbox for presenting all other e-mails thathave not originated locally;

FIG. 5 is a depiction of a wireless communications device displaying anexample of a user-configurable roaming profile that has been manuallyactivated to give precedence to inbound communications received fromsenders that are within, for example, 50 km of the user's currentposition;

FIG. 6 is a depiction of a wireless communications device displaying anexample of a user-configurable roaming profile that has been manuallyactivated to give precedence to inbound communications received fromsenders that are within the city of Montreal;

FIG. 7 is a depiction of a wireless communications device displaying anexample of a user-configurable roaming profile that is set for automaticactivation when the device roams to a specified geographical area(“Montreal and suburbs”) so as to give precedence to inboundcommunications received from senders that are within the city ofMontreal or its suburbs; and

FIG. 8 is a depiction of a wireless communications device displaying anexample of a roaming profile options page that can be configured by theuser to define the application of the filter to senders and to differenttypes of communication, how to distinguish incoming text communicationsand how to distinguish incoming voice communications.

It will be noted that throughout the appended drawings, like featuresare identified by like reference numerals.

DETAILED DESCRIPTION

The present technology provides, in general, a method of managinginbound communications received by a roaming wireless communicationsdevice that enables the user to filter the inbound communications so asto exclusively display, prioritize, highlight or give precedence tothose communications (e.g. e-mails, SMS, MMS or PIN text messages, orphone calls) that originate from senders who themselves are locatedwithin the geographical area in which the user is currently roaming.Alternatively, the device can be configured to only display thoseinbound communications that originate from the geographical area (e.g.city) in which the user is roaming to the exclusion of all othercommunications. Accordingly, the user can enable this roaming profile toensure that he or she is readily apprised of all inbound communicationsfrom contacts or other people in the city or area in which he or she iscurrently located. This new technology is very helpful when the roaminguser wishes to focus his attention on any communications emanating fromthe area in which he is currently roaming, such as, for example, whenawaiting or expecting instructions or directions from local contacts, orsimply to prioritize messages or calls from business or personalcontacts with whom the user is traveling to visit or meet.

Accordingly, an aspect of the present technology is a method of managinginbound communications received by a roaming wireless communicationsdevice. The method comprises enabling activation on the roaming wirelesscommunications device of an inbound communications filter having filtercriteria based on a current location of the wireless communicationsdevice, determining whether an inbound communication comprising textdata satisfies the filter criteria, and providing a visual notificationthat the inbound communication satisfies the filter criteria to visuallydistinguish the inbound communication satisfying the filter from otherinbound communications.

Another aspect of the present technology is a computer readable mediumthat includes code adapted to perform the steps of the foregoing methodwhen the computer readable medium is loaded into memory and executed ona processor of a wireless communications device.

Yet another aspect of the present technology is a wirelesscommunications device having a positioning subsystem for determining acurrent location of the wireless communications device, a processorcoupled to memory for activating an inbound communications filter havingfilter criteria based on the current location of the wirelesscommunications device, the processor being configured to determinewhether an inbound communication comprising text data satisfies thefilter criteria, and a user output interface for providing visualnotification that the inbound communication satisfies the filtercriteria to visually distinguish the inbound communication satisfyingthe filter from other inbound communications.

The details and particulars of these aspects of the technology will nowbe described below, by way of example, with reference to the attacheddrawings.

FIG. 1 is a flowchart outlining steps of a method of managing inboundcommunications received by a roaming wireless communications device.This method includes an initial step (step 10) of enabling a user of theroaming wireless communications device to activate an inboundcommunications filter having filter criteria based on a current locationof the user and a current location of a sender of an inboundcommunication. In other words, at step 10, the user of the wirelesscommunications device enables the device to filter incomingcommunications based on geographical proximity. The device can bemanually enabled, i.e. when the user travels to another city or place,or it can be automatically enabled (by having the device autonomouslyrecognize that it has roamed to another city and then automaticallyactivate a geographical-based filter or profile based on preferences orsettings, which would be preset by the user). Optionally, the user maymodify, change, alter or override the roaming profile that has been set(or any of the filter characteristics that are currently being used) tosuit changing needs or wishes. Activating the inbound communicationsfilter (or enabling the roaming profile) can be done prior to roaming orafter the device has started roaming (or even while the device is “intransit”, e.g. on an airplane with the wireless transceiver shut off).

After the user has activated the inbound communications filter (orroaming profile or geographically based filter) to thus explicitly orimplicitly define the filter criteria, the device then determines, uponreceipt of each new inbound communication (step 12), whether the inboundcommunication satisfies the filter criteria (step 14) by comparing thelocation of the sender of the inbound communication with the currentlocation of the user of the device.

If the inbound communication satisfies the filter criteria, the devicethen notifies the user that the inbound communication has been received,as will be elaborated below with respect to steps 18-28. If the inboundcommunication does not satisfy the filter criteria, i.e. the inboundcommunication has not originated within a desired proximity of the user,then the device notifies the user of the inbound communication (step 16)in a normal manner (i.e. using a normal ring tone for incoming calls anddisplaying e-mails or other text messages in the normal manner, e.g. byplacing them in the usual inbox with the usual font and color).

Provided that the inbound communication satisfies the filter criteria,the device determines (step 17) the type of incoming communication (i.e.whether the communication is a telephone call (voice data) or whether itis text data, such as an e-mail, SMS, MMS, or PIN message).

If the inbound communication is an e-mail (step 18), and provided, ofcourse, that the e-mail satisfies the filter criteria as beingsufficiently proximate or local to the roaming user, the device thendisplays the inbound e-mail in a manner that exclusively displays,highlights, prioritizes or gives precedence to this “local” inbounde-mail over other (“non-local”) inbound e-mails. Similarly, if theinbound communication is a telephone call (step 20), and provided, ofcourse, that the telephone call satisfies the filter criteria as beingsufficiently local to the roaming user, the device will notify the userof the incoming call in a manner that gives precedence to, or otherwisedistinguishes, this local incoming call over other (non-local) calls.

For example, at step 22, the device may be configured to display allinbound e-mail messages that satisfy the filter criteria withoutdisplaying inbound e-mail messages that fail to satisfy the filtercriteria. This exclusive displaying of local messages (i.e. to theexclusion of non-local messages) can be accomplished, for example, byhaving a dedicated (i.e. separate) inbox for local inbound e-mails whichis shown as the default inbox when the user accesses his e-mailapplication or which is, at least, shown more prominently than the maininbox containing all e-mails regardless of their point of origin. Inthis example implementation, the user can then switch from the (default)local inbox to the main inbox to view other e-mails, as desired.

As an alternative to having a separate inbox dedicated to local e-mails(step 22) that exclude non-local e-mails, the device can also beconfigured to display all received e-mails in the same inbox (i.e. theusual main inbox), but display the local messages in a visuallydistinctive manner that distinguishes inbound e-mail messages satisfyingthe filter criteria from messages that do not satisfy the filtercriteria. For example, at step 24, the device can be configured todisplay all received e-mails in the same inbox but to show those thathave originated locally to the roaming device using a distinctive fontand/or a distinctive color. Alternatively, the e-mails that haveoriginated locally can have an icon beside them. Furthermore, adistinctive beep or other auditory signal could be sounded to signalthat the incoming e-mail has originated from a sender who is local tothe roaming device.

For incoming voice calls (step 20), the device can be configured tosound a distinctive ring tone for an inbound telephone call satisfyingthe filter criteria (step 26). Alternatively, the device can beconfigured to sound a ring tone at an increased volume for an inboundtelephone call satisfying the filter criteria (step 28). Of course, as afurther alternative, the device can be configured to sound a distinctivering tone at an increased volume (combining steps 26 and 28). As will beappreciated, there are numerous ways of notifying the user of the localincoming communication so as to distinguish communications thatoriginate locally from those originate remotely. FIG. 1 merely depicts,by way of example only, two different ways of distinctively notifyingthe user for both voice and text, although other techniques could beused to signal that a local communication is incoming. For example, thewireless device could be configured to simultaneously vibrate (and/orplay a distinct sound and/or use synthesized speech to announce that alocal call is incoming, etc.) to signal to the user that the incomingcommunication has originated locally and is thus of higher priority thanother (non-local) communications.

In a further example, non-local e-mails might be received silently (withthe mail envelope icon appearing or blinking), but if the e-mail is froma contact or IP address that is local to the roaming device, the devicecould beep, play a sound, alarm or ring tone, vibrate, or cause aspecial icon to appear or blink, or cause the UI to change to adifferent theme. These various techniques are merely presented by way offurther examples to illustrate that the user can be notified of alocally originated communication in a distinctive manner that the userwill recognize as being associated with a local communication.

In one implementation, the filter criteria can be defined by enablingthe user to specify a distance between the user of the device and thesender of the inbound communication within which the user is to benotified of inbound communications from the sender. For example, theuser could specify that he or she is to be notified of any incomingcommunication that originates from a sender who is within a radius of100 km of the user's current location.

The distance between the current location of the user and the locationof the sender can be determined in a number of different ways. Forexample, the mobile user's current location can be determined fairlyprecisely using GPS (provided the device has a GPS chipset or isconnected to an external GPS puck, such as via a Bluetooth connection).Alternatively, the mobile user's current location can be determined byestimating a distance to cellular base stations using triangulation ofsignals from in-range base stations, such as used for Wireless E911.Techniques for locating a wireless device using radiolocation include(i) angle of arrival (AOA) which entails locating the caller at thepoint where signals from two towers intersect; (ii) time difference ofarrival (TDOA), which uses multilateration like GPS, except that thenetworks determine the time difference and therefore the distance fromeach tower; and (iii) location signature, which uses “fingerprinting” tostore and recall patterns (such as multipath) which mobile phone signalsexhibit at different locations in each cell. Depending on thecircumstances, and in particular the density of cell towers in a givenarea, it may also be possible to simply use the closest cell tower (withtriangulation) as a sufficient approximation for the location of theuser. Since cell towers are often more densely located in highlypopulated areas, they would accordingly provide better resolution whereit is generally most required.

The sender's location can be determined by looking up the sender in theuser's address book of contacts and correlating the particular e-mailaddress or telephone number with a particular work address or homeaddress. For communications emanating from a mobile device, i.e. for anincoming e-mail or incoming telephone call originating from a mobiledevice, the mobile device itself may send its current location or GPScoordinates as part of the call signalling and setup.

If the sender's contact information is not stored in the user's addressbook, then the location of the sender can be determined from the areacode of the incoming telephone call or from the IP address of theincoming e-mail.

In another implementation, the user can define the filter criteria byselecting a predefined geographical area (e.g. city, state, country,time-zone, continent, etc.) so that the user is notified of any inboundcommunications originating from within the predefined geographical area.The user can select a generic geographical area (the granularity of thefilter) so that the device automatically switches to the city or countryin which it is roaming without having to specify which city or whichcountry. This requires the device to correlate its GPS coordinates witha database of ranges of latitude and longitude coordinates for cities,counties, states, provinces, countries, etc. Alternatively, as anotherexample, the user can select a specific city from a menu of cities,thereby defining specifically the filter criteria so that any call ore-mail originating from within that particular city is highlighted orgiven precedence. Optionally, the user can specify whether the filter isto apply to any incoming communication or only those from recognizedcontacts about whom information is stored in the user's address book. Inother words, the user can activate a roaming profile that prioritizesinbound communications from contacts whose addresses are within aspecified geographical area, presenting these in a distinctive manner todistinguish these over all other incoming communications.

FIG. 2 is a block diagram depicting certain key components of a wirelesscommunications device 100 on which the present technology can beimplemented. It should be expressly understood that this figure isintentionally simplified to show only certain components; the device 100of course includes other components beyond those shown in FIG. 2. Thedevice 100 includes a microprocessor 102 (or simply a “processor”) whichinteracts with memory in the form of RAM 104 and flash memory 106, as iswell known in the art. The device 100 includes an RF (radio-frequency)transceiver 108 for communicating wirelessly with one or more basestations 200. The device 100 includes a GPS (Global Positioning System)receiver chipset 110 for receiving GPS radio signals transmitted fromone or more orbiting GPS satellites 300. In terms of input/outputdevices or user interfaces (UI), the device 100 typically includes adisplay 112 (e.g. a small LCD screen), a thumbwheel and/or trackball114, a keyboard or keypad 116, a USB 118 or serial port for connectingto peripheral equipment, a speaker 120 and a microphone 122. Theprocessor and memory thus enable an e-mail application to run on thewireless device for receiving and sending e-mails. Similarly, theprocessor and memory can enable other text messaging such as SMS, MMS orPIN messages. The speaker 120, microphone 122 and RF transceivercircuitry 108 form part of a voice communication subsystem that enablescellular communication.

Depending on the mobile user's subscription and network compatibilities,the wireless communications device 100 can usually roam to anotherlocation away from its home area, such as to another city. After beingturned on in another city or after a handover to the host network, thehost network will recognize that the wireless device is unregistered,and will then attempt to identify its home network typically by usingthe IMSI number. If there is an agreement between the networkspermitting roaming, the host network will maintain a temporarysubscriber record (e.g. a Visiting Location Register, or VLR) for theroaming wireless device while the home network updates its owninformation in its Home Location Register (HLR) to indicate that thedevice is roaming on a host network. In detecting that the device isroaming, the device can then, depending on its settings, either (i)prompt the user to manually activate the roaming profile (or otherwiseprompt the user to manually set filter criteria based on geographicallybased parameters) or (ii) automatically activate the roaming profile.The automatically activated roaming profile can include preset filtercriteria preconfigured during the device set-up, or preconfigured by thesystem administrator, etc. As noted above, the filter criteria (ineither manual or automatic activation scenarios) can be defined in termsof a particular city, county, state or province, country, continent,etc. or in terms of a particular distance from the user (e.g. anymessages from within a 100-kilometer radius of the current location ofthe user).

FIG. 3 depicts, by way of example only, a wireless communications device100 having a display 112 for displaying inbound e-mails or othertext-based communications, and a trackball 114 and alphanumeric(QWERTY-style) keypad 116 for opening, replying to, forwarding,deleting, and sending e-mails, as well as selecting or accessing otherfunctions of the device, as is known in the art. As depicted in theexample presented in FIG. 3, the display 112 can display an inbox 400 inwhich any e-mail that has originated locally to the device is presentedwith a distinctive font to distinguish each of these locally originatede-mails (or other text messages) from those e-mails (or other textmessages) that have not originated locally. For example, as shown inFIG. 3, the inbox contains four e-mails: a first e-mail 420 frombob@email.com that is presented in uppercase (capital) letters and/or ina distinctive font and/or in a distinctive color because it hasoriginated locally to the user, thus satisfying the filter criteria forspecial (priority) treatment. In contradistinction, the second e-mailfrom mat@email.com is presented in lower-case letters in the usual fontand color because this e-mail has not originated locally and is thusdisplayed in a normal manner. Likewise, the third e-mail (an outbounde-mail to ray@email.com) is presented normally (in lowercase letterswithout special fonts or colors). The fourth e-mail (a received and reade-mail from ted@email.com) is displayed normally. Optionally, inaddition to, or in lieu of the special distinctive font and/or colorand/or lettering size used to distinguish local incoming communications,the device may display a small icon 410, such an L with a circle aroundit, to indicate that the e-mail has originated locally to the user. Asmentioned above, the device may also use an audible alert (play aspecial sound, ring tone, beep, etc.) or vibrate to signify that theincoming e-mail is local.

FIG. 4 depicts, again by way of example only, a wireless communicationsdevice 100 that displays a local inbox 440 for presenting e-mails thathave originated locally to the device and a separate main inbox 445 forpresenting all other e-mails that have not originated locally. As afurther optional feature, the device 100 can display a numericalindication 430 of the number of local e-mails. For example, as depictedin FIG. 4, the number of local e-mails can be presented in parenthesesin a top portion of the display beside the total number of e-mails thatare currently waiting to be read in the inbox (or inboxes, in the caseof a “split” inbox). In this particular example depicted in FIG. 4, thedisplay shows the envelope icon and the number 28 to indicate that thereare 28 unread e-mails in the user's inbox (or inboxes) of which 2 arelocal, namely the unread e-mails from bob@email.com and frombill@email.com.

FIG. 5 depicts a wireless communications device 100 displaying anexample of a user-configurable roaming profile 450 that has beenmanually activated to give precedence to inbound communications receivedfrom senders that are within, for example, 50 km of the user's currentposition. As depicted in the example presented in FIG. 5, the roamingprofile 450 includes a toggle or button 452 to enable the user tomanually activate the roaming profile as well as a corresponding toggle454 for alternatively enabling the user to activate the roaming profileautomatically upon roaming. In this particular example, the manualactivation is toggled. In addition, as depicted in the example presentedin FIG. 5, the roaming profile 450 may include a user-configurableproximity definition 460 to enable the user to define what constitutes a“local” communication. Specifying this proximity threshold thus definesthe filter criteria by which the device decides whether to treat anincoming communication as local or not. In this example, the user caneither define the filter criteria in terms of a distance to the sender462 or in terms of a geographical area 464. In this particular example,the “Distance to sender” option has been toggled, thus causing thedevice to further display two further options, namely a first optionenabling the user to specify a distance (e.g. in kilometres) by typing anumerical value into a field or box. If the “Distance to sender” optionhas been toggled, a second option enables the user to tick off one of aplurality of predetermined distances, such as, for example, 10 km, 50km, or 100 km. The roaming profile could include settings to enable theuser to switch the units from kilometres to miles. Alternatively, theroaming profile could automatically switch between kilometres and mileswhen the device roams from a jurisdiction that uses the metric system(e.g. Canada) to a jurisdiction that uses miles (e.g. the U.S.) and viceversa.

FIG. 6 depicts a wireless communications device 100 displaying theuser-configurable roaming profile 450 introduced in FIG. 5. The roamingprofile 450 has been manually activated (452) to give precedence toinbound communications received from senders that are within a specifiedcity (e.g. the city of Montreal). In the example presented in FIG. 6,the “Geographical area” toggle 464 has been selected and the boxcorresponding to “City” 466 has been checked. In this particularexample, the device enables the user to select a city from a menu 468 orlist of cities. In this example, the user has selected Montreal from thelist. Optionally, an arrow (or other indicator) can be used to point tothe selected city (Montreal) and/or optionally the choice (Montreal) canbe shaded grey. As a further option, the “City” box 466 can be updatedto show the selected city (Montreal) in parentheses, as illustrated inFIG. 6.

FIG. 7 depicts a wireless communications device 100 displaying theuser-configurable roaming profile 450 introduced in FIG. 5 but nowconfigured for “auto” mode. In this further example, the roaming profile450 has been set or configured for automatic activation (i.e. toggle 454has been selected instead of toggle 452) so that when the device roamsto another location that is distant from its home area the deviceautomatically switches to the roaming profile 450. In this particularexample, the filter criteria are being defined in terms of ageographical area (specifically, in this example, in terms of a city andits suburbs). As depicted in this figure, the box “City & Suburbs” hasbeen checked by way of example only, but the roaming profile couldprovide a number of possible geographical areas to choose from, as shownin this example: city, city and suburbs, county, region, state/province,country, continent, area code, time zone, etc.

Since automatic activation has been selected in this example (i.e. thetoggle/button 454 has been clicked), the device automatically detectsthat it is roaming, determines its current position (using GPS and/orbase station radiolocation techniques) and then correlates the currentlocation with the particular geographical area selected by the user. Inthis particular example presented in FIG. 7, the device may display thatthe GPS is on (“GPS ON” 470 or use an icon for GPS or otherlocation-determining capability). The device may also present an“Options” button 472 to set further features or activate advancedoptions, which will be described below with reference to FIG. 8.

Optionally, as shown in the example presented in FIG. 7, the device candisplay the current location 474 in terms of latitude and longitude andthe name of the geographical area 476 corresponding to this currentlocation. Display of these pieces of information can also be suppressedby the user if the user desires to de-clutter the user interface (UI).In this particular example, the GPS-determined current location is 45.28N and 73.45 W. By correlating this current location to a look-up tableof latitude and longitude ranges or boundaries for cities and theirsuburbs (the selected geographical area in this example), the devicedetermines that the current location is within the city of Montreal andits suburbs.

If the coordinates fall outside any known city and its suburbs (thecategory of geographical area specified), the device can periodically orintermittently provide a warning to the user that the roaming profilehas not yet been automatically activated, e.g. after a long time haselapsed, or if the user has remained in the same area for a long time,suggesting that the user has reached his destination and that thedestination does not correspond to the type of geographical areaspecified by the user in the roaming profile. In this case, the devicecan optionally prompt the user to switch to a larger geographical area(i.e. from city and suburbs to county, state/province, country,continent). Alternatively, the device can prompt the user to put theroaming profile into standby mode so that the roaming profile continuesto remain inactive until the user roams into the boundaries defining acity (and/or its suburbs). Yet alternatively, the device can prompt theuser to put the roaming profile into manual mode or to specificallydefine the geographical area (i.e. pick a city from a menu of nearbycities) rather than have the device determine the geographical area fromits current position, which acts as a sort of “manual override” forsituations where a GPS fix is difficult to acquire (e.g. inside abuilding, underground, etc.) or where the user is roaming on theoutskirts of a city's suburban boundary.

Once the roaming profile is automatically activated (i.e. thegeographically-based filtering is triggered or initiated by the deviceroaming into a selected geographical area (e.g. “Montreal and suburbs”),inbound communications that originate from within the specifiedgeographical area (e.g. Montreal and its suburbs) will be givenprecedence, highlighted or even possibly displayed to the exclusion ofnon-local incoming communications. For automatic activation, the usercan define filter criteria either generically by selecting a genericgeographical area (city, state, country) or specifically by selecting aspecific geographical area (specific city, specific state, specificcountry). In the former case, the device activates the roaming profileautomatically when it roams to any city (or any state or any country)provided the current position falls within the bounds of any one of thecities (or states or countries) in its database. In the latter case, thedevice automatically activates the roaming profile when the device roamsto the specifically identified city (e.g. Montreal, Toronto, New York)that the user has selected.

FIG. 8 depicts a wireless communications device displaying an example ofa roaming profile options page 500 that can be configured by the user todefine how the filter criteria are to be applied to senders and todifferent types of communication, how to distinguish incoming textcommunications and how to distinguish incoming voice communications. Asdepicted in the example presented in FIG. 8, the roaming profile optionspage 500 may include a first filter setting for filtering based on theidentity of the sender (“Application of filter to sender”) 510 and asecond filter setting for filtering based on the type of communication(“Application of filter to type of communication”) 520. As shown in thisparticular example, the first filter setting 510 enables the user toactivate the roaming profile so that it filters all inboundcommunications or to only those inbound communications that originatefrom known contacts (i.e. e-mail addresses or phone numbers that arestored in the user's address book). As also shown in this particularexample, the second filter setting 520 enables the user to activate theroaming profile's filter so that it applies to both voice and text, tovoice only, or to text only. Thus, the user can configure the device sothat only local telephone calls are treated specially (but not locale-mails) or vice versa. Usually, though, the user will choose to applythe roaming profile to both voice and text.

As further depicted in FIG. 8, the roaming profile options page 500 mayinclude a text setting 530 and a voice setting 540 to specify how theuser wishes to be notified of locally originated incomingcommunications. For example, as shown in FIG. 8, the text setting 530may include check boxes to enable distinguishing features such as anicon, a distinctive color, a distinctive font or the use of a separateinbox dedicated to local communications. As shown in this example, theuser may select more than one distinguishing feature. In this example,the user has selected “icon”, “color” and “text” in the text settings530 so that any incoming text-based communication that satisfies thefilter criteria is presented not only in a different (i.e. distinctive)color and font (such as the first message 420 in FIG. 3) but also with aspecial icon (such an icon 410 in FIG. 3) beside the communication toindicate that the message has originated locally to the user's device,i.e. with sufficient proximity to the user's device. As also shown inthe particular example presented in FIG. 8, the user has configured thevoice settings 540 so that inbound telephone calls that satisfy thefilter criteria for sufficient geographical proximity trigger adistinctive ring tone.

As illustrated by way of examples in the figures presented above, theuser can thus customize the geographical-based profile (or “roamingprofile”) to screen or filter inbound communications based on location,i.e. by specifying a target geographical entity from whichcommunications are to be given precedence. The target geographicalentity that is selected to define the filter criteria can a city,county, state or province, region, country, or continent. Alternatively,the user can define the target geographical entity in terms of othergeographically-related indicia such as area code, IP address prefix,postal code or zip code, street, neighbourhood (district, borough,sector, etc.) or in terms of a radius or distance from a particularposition specified in terms of latitude and longitude. Correlating aparticular position (e.g. GPS coordinates) to a geographical entity(e.g. a city, a state, etc.) can be done using a look-up table ordatabase, or by exploiting the map data accessible by a mappingapplication that is executing on the device. On a wirelesscommunications device, the processor and memory cooperate to enable auser to run a mapping application that can render map data (which isusually downloaded over the air from a map server). The map datacontains polygons that define the boundaries of various geographicalfeatures such as cities or municipalities. The device can translate alocation to a city/municipality (or, by analogy, other geographicalentity) by either using the map data on the device, querying the mapdata, or asking a server (e.g. the map server or a location-basedservices (LBS) server) to resolve its location.

Matching up, for example, latitude and longitude to a phone number areacode can be done using a database that maps area codes to theirgeographic area, similar to what can be done with cities/municipalities.For example, one implementation would use a map layer that includes areacodes in order to correlate the current location to an area code. In oneimplementation, all of the map data for the entire world is divided andstored as a grid according to various levels of resolution (zoom). Forexample, a single A-level “Maplet” represents a 0.05×0.05 degree gridarea; a single B-level Maplet represents a 0.5×0.5 degree grid area; asingle C-level Maplet represents a 5×5 degree grid area; a singleD-level Maplet represents a 50×50 degree grid area; and a single E levelMaplet represents the entire world in a single Maplet. A Maplet datastructure can be provided that contains all of the graphic and labelledcontent associated with a geographic area (e.g. map features such asrestaurants (point features), streets (line features) or lakes (polygonfeatures)). These Maplets can be structured in Layers of Data Entries(“DEntries”) identified by a “Layer ID” to enable data from differentsources to be deployed to the device and meshed for proper rendering.Each DEntry is representative of one or more artefact or label (or acombination of both) and includes coordinate information (also referredto as a “bounding box” or “bounding area”) to identify the area coveredby the DEntry and a plurality of data points that together represent theartefact, feature or label. For example, a DEntry may be used torepresent a street on a city map (or a plurality of streets), whereinthe carious points within the DEntry are separated into different partsrepresenting various portions of the artefact or map feature (e.g.portions of the street). A wireless device may issue a request for themap server to download only those DEntries that are included within aspecified area or bounding box representing an area of interest that canbe represented by, for example, a pair of bottom left, top rightcoordinates. Thus, in each map layer, geographical information can beprovided, such as area codes, postal codes, or the identity of theregion, county, city, etc. Thus, the device's mapping application couldbe used to correlate a current location with a particular area code(stored in the map layer), particular postal code, etc.

The foregoing method steps can be implemented as coded instructions in acomputer program product. In other words, the computer program productis a computer-readable medium upon which software code is recorded toperform the foregoing steps when the computer program product is loadedinto memory and executed on the microprocessor of the wirelesscommunications device.

This new technology has been described in terms of specificimplementations and configurations which are intended to be exemplaryonly. The scope of the exclusive right sought by the Applicant istherefore intended to be limited solely by the appended claims.

The invention claimed is:
 1. A method of managing inbound communicationsreceived by a roaming wireless communications device, the methodcomprising: enabling activation on the roaming wireless communicationsdevice of an inbound communications filter having filter criteria basedon a current location of the wireless communications device; determiningwhether an inbound communication comprising text data satisfies thefilter criteria; and providing a visual notification that the inboundcommunication satisfies the filter criteria to visually distinguish theinbound communication satisfying the filter from other inboundcommunications.
 2. The method as claimed in claim 1 wherein providingthe visual notification comprises displaying all inbound e-mail or textmessages that satisfy the filter criteria without displaying inbounde-mail or text messages that fail to satisfy the filter criteria.
 3. Themethod as claimed in claim 1 wherein providing the visual notificationcomprises displaying an inbound e-mail or text message in a visuallydistinctive manner that distinguishes inbound e-mail or text messagessatisfying the filter criteria from messages that do not satisfy thefilter criteria.
 4. The method as claimed in claim 1 wherein providingthe visual notification comprises displaying an inbound e-mail or textmessage using a distinctive color and/or a distinctive font.
 5. Themethod as claimed in claim 1 wherein providing the visual notificationcomprises displaying one inbox for inbound communications satisfying thefilter criteria and a separate inbox for other inbound communications.6. The method as claimed in claim 1 wherein enabling activation of theinbound communications filter is in response to detecting that thedevice is roaming.
 7. A non-transitory computer readable mediumcomprising code which when loaded into memory and executed on aprocessor of a wireless communications device causes the wirelesscommunications device to: enable activation on the roaming wirelesscommunications device of an inbound communications filter having filtercriteria based on a current location of the wireless communicationsdevice; determine whether the inbound communication comprising text datasatisfies the filter criteria; and provide a visual notification thatthe inbound communication satisfies the filter criteria to visuallydistinguish the inbound communication satisfying the filter from otherinbound communications.
 8. The non-transitory computer readable mediumas claimed in claim 7 wherein the code for providing the visualnotification comprises code for displaying all inbound e-mail or textmessages that satisfy the filter criteria without displaying inbounde-mail or text messages that fail to satisfy the filter criteria.
 9. Thecomputer readable medium as claimed in claim 7 wherein the code forproviding the visual notification comprises code for displaying aninbound e-mail or text message in a visually distinctive manner thatdistinguishes inbound e-mail or text messages satisfying the filtercriteria from messages that do not satisfy the filter criteria.
 10. Thecomputer readable medium as claimed in claim 7 wherein the code forproviding the visual notification comprises code for displaying aninbound e-mail or text message using a distinctive color and/or adistinctive font.
 11. The computer readable medium as claimed in claim 7wherein the code for providing the visual notification comprises codefor displaying one inbox for inbound communications satisfying thefilter criteria and a separate inbox for other inbound communications.12. The computer readable medium as claimed in claim 7 wherein the codefor enabling activation of the inbound communications filter comprisescode to enable activation in response to detecting that the device isroaming.
 13. A wireless communications device comprising: a positioningsubsystem for determining a current location of the wirelesscommunications device; a processor coupled to memory for activating aninbound communications filter having filter criteria based on thecurrent location of the wireless communications device, the processorbeing configured to determine whether an inbound communicationcomprising text data satisfies the filter criteria; and a user outputinterface for providing visual notification that the inboundcommunication satisfies the filter criteria to visually distinguish theinbound communication satisfying the filter from other inboundcommunications.
 14. The wireless communications device as claimed inclaim 13 wherein the user output interface is a display screen thatdisplays only inbound e-mail or text messages that satisfy the filtercriteria within a separate local-specific inbox dedicated for localmessages that is separate from a main inbox that displays all inbounde-mail or text messages regardless whether the inbound e-mail or textmessages satisfy the filter criteria.
 15. The wireless communicationsdevice as claimed in claim 13 wherein the user output interface is adisplay screen that displays, in a main inbox of an e-mail ortext-messaging application running on the device, an inbound e-mail ortext message in a visually distinctive manner that distinguishes inbounde-mail or text messages satisfying the filter criteria from messagesthat fail to satisfy the filter criteria.
 16. The wirelesscommunications device as claimed in claim 13 wherein the inbound messageis displayed in the main inbox using a distinctive color and/or adistinctive font.
 17. The wireless communications device as claimed inclaim 13 wherein the processor activates the inbound communicationsfilter in response to detecting that the device is roaming.